// Used by main.
//

#define NUMOPENKEY  0
#define NUMQUERYVAL 1
#define NUMENUMVAL  2

#define IOCTL_QUERY_MODE \
        CTL_CODE(FILE_DEVICE_UNKNOWN, 0x808, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_SET_READONLY \
        CTL_CODE(FILE_DEVICE_UNKNOWN, 0x810, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_SET_WRITABLE \
        CTL_CODE(FILE_DEVICE_UNKNOWN, 0x812, METHOD_BUFFERED, FILE_READ_ACCESS)

#define _NT_TARGET_VERSION_WIN7     0x601
#define _NT_TARGET_VERSION_VISTA    0x600
#define _NT_TARGET_VERSION_WS03     0x502
#define _NT_TARGET_VERSION_WINXP    0x501
#define _NT_TARGET_VERSION_WIN2K    0x500

#if _NT_TARGET_VERSION == _NT_TARGET_VERSION_WS03
#define   MAJORVERSION  5
#define   MINORVERSION  2
#define   NUMSETVALUE   0x100
#define   NUMDELVALUE   0x44
#elif _NT_TARGET_VERSION == _NT_TARGET_VERSION_VISTA
#define   MAJORVERSION  6
#define   MINORVERSION  0
#define   NUMSETVALUE   0x145
#define   NUMDELVALUE   0x7D
#elif _NT_TARGET_VERSION == _NT_TARGET_VERSION_WIN7
#define   MAJORVERSION  6
#define   MINORVERSION  1
#define   NUMSETVALUE   0x166
#define   NUMDELVALUE   0x6A
#elif _NT_TARGET_VERSION == _NT_TARGET_VERSION_WINXP
#define   MAJORVERSION  5
#define   MINORVERSION  1
#define   NUMSETVALUE   0xF7
#define   NUMDELVALUE   0x41
#else //  try to pass by
#define   MAJORVERSION  5
#define   MINORVERSION  9
#endif

